Discovery API - Test
Addresses - format and APIs
Integrating applications can arrive at our services with a valid address or use our partner system LASSI's services to find an address.
- Arrive with a validated address
- Use the LASSI Autocomplete Address search service to find an address
- Use the LASSI Structured Address service to find an address
The source of address that is used in Landata services comes from the LASSI system (Land and Survey Spatial Information).
Arrive with a validated address
If you have a Victorian address already, using a different API service such as google to validate it, you may send this to our discovery APIs, with some transformation required to align to our ezi-address format.
We accept the ezi-address format in our property discovery API, so you can then choose a PFI to obtain the products available on that property. To prepare the address in the format, use the below:
EZI Address must be constructed according to the following formula. EZI address is constructed as one continuous line of text in all capitals.
Values are concatenated as follows:
Condition | Values |
---|---|
{unit_prefix_1}{unit_no_1}{unit_suffix_1} | |
if unit number 2 not blank | [space]–[space]{unit_prefix_2}{unit_no_2}{unit_suffix_2} |
if unit number(s) not blank | / |
{house_prefix_1}{house_no_1}{house_suffix_1} | |
if house number 2 not blank | [space]–[space]{house_prefix_2}{house_no_2}{house_suffix_2} |
if number(s) not blank | [space] |
{road_name} [space]{road_type} | |
if road suffix not blank | [space]{road_suffix} |
[space]{locality} | |
if post code not blank | [space]{post_code} |
Autocomplete Address search service
This API can be used to power autocomplete address fields, to search and match valid addresses. Once an address is found here, it can be used in the SERV property discovery API to see related properties, titles and parcels. If using these LASSI services, this option is most recommended. This API is accessible without an API key.
Endpoints
UAT
https://maps.test.land.vic.gov.au/lvis/services/search/v1
PROD
https://maps.land.vic.gov.au/lvis/services/search/v1
Request
Query Parameter | Data type | Mandatory? | Example | Comments |
---|---|---|---|---|
searchFor | string | Y | 220 lonsdale | Input to search based on. Note: Must be URL encoded. |
type | string | N | address | For DDP’s purposes, it should always be “address”. If not provided all entity types will be returned. |
Open API Specification
openapi: 3.0.0
info:
title: Address Search API
version: 1.0.0
description: API for searching addresses
servers:
- url: https://maps.land.vic.gov.au/lvis
paths:
/search/v1:
get:
summary: Search for addresses
parameters:
- name: searchFor
in: query
required: true
schema:
type: string
description: Search input. If a long invalid value is supplied, it may not yield any result.
- name: type
in: query
required: false
schema:
type: string
enum:
- address
- lga
- locality
- parcel
- parish
- property
- road
- survey label
- survey mark
- township
description: For DDP’s purposes, suggest to use “address” search type. If not provided all entity types will be returned.
responses:
'200':
description: Successful search result
content:
application/json:
schema:
$ref: '#/components/schemas/AddressSearchResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'503':
description: Service Temporarily Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
ErrorResponse:
type: object
properties:
error:
type: string
description: Error message, e.g. "No search keywords or invalid search keywords"
AddressSearchResponse:
type: object
properties:
took:
type: integer
description: Time (in milliseconds) taken for the search operation
hits:
type: object
properties:
total:
type: integer
description: Total number of hits
hits:
type: array
items:
type: object
properties:
_source:
type: object
properties:
address:
type: string
description: Address details
location:
type: string
description: Geographic coordinates
type:
type: string
description: Type of address
doc_id:
type: integer
description: Document ID. If searching by 'address', then the doc_id represent address PFI. Note: This is different from property PFI required by DDP APIs when purchasing property products.
Sample request and response
Request
https://maps.test.land.vic.gov.au/lvis/services/search/v1?type=address&searchFor=200%20lonsdale
Response
{
"took": 18,
"hits": {
"total": 6,
"hits": [
{
"_source": {
"address": "200 LONSDALE STREET MELBOURNE 3000",
"location": "-37.8103415826143,144.965536489498",
"type": "address",
"doc_id": "203624231"
}
},
{
"_source": {
"address": "200-208 LONSDALE STREET DANDENONG 3175",
"location": "-37.988486811,145.214871136",
"type": "address",
"doc_id": "54587775"
}
},
{
"_source": {
"address": "200/28 LITTLE LONSDALE STREET MELBOURNE 3000",
"location": "-37.80857469163,144.970610381242",
"type": "address",
"doc_id": "203605139"
}
},
{
"_source": {
"address": "200 FELLOWS ROAD POINT LONSDALE 3225",
"location": "-38.2697332367134,144.616214315134",
"type": "address",
"doc_id": "53631334"
}
},
{
"_source": {
"address": "200-202 POINT LONSDALE ROAD POINT LONSDALE 3225",
"location": "-38.2749931449999,144.619055504",
"type": "address",
"doc_id": "53628746"
}
},
{
"_source": {
"address": "200 BOISDALE-STRATFORD ROAD MAFFRA 3860",
"location": "-37.9285760276295,147.015746142419",
"type": "address",
"doc_id": "54349745"
}
}
]
}
}
Structured address search service
This API searches for an address via PFI, CPN, SPI, or street address. It returns information about the property, the street address, and the parcel(s) associated with the property. Once an address is found here, it can be used in the SERV property discovery API to see related properties, titles and parcels. If using these LASSI services, this is recommended as a secondary option for a more detailed parsed search of complex addresses. This API is accessible without an API key.
Endpoints
UAT
https://maps.test.land.vic.gov.au/lvis/services/AddressSearch
PROD
https://maps.land.vic.gov.au/lvis/services/AddressSearch
Request
There are two types of search via address: parsed and unparsed. For these purposes you may use parsed search. To use parsed address search, set the functionID
as 1100.
Parsed address search takes one or more attributes e.g. postcode, street name, state, unit number etc. of an address as input. See below table for list of attributes.
Name | Mandatory? | Description | Example |
---|---|---|---|
buildingName | No | Name of a building NOTE: Do not use this field | DAVID JONES |
country | No | Country | Australia |
levelNumber | No | The floor/level number | 9 |
levelNumberPrefix | No | Prefix for floor/level | B |
levelNumberSuffix | No | Suffix for floor level | A |
levelType | No | Floor/level type. | LG |
locality | One of thoroughfareName or locality or postcode is mandatory | Suburb | DOCKLANDS |
lotNumber | No | Lot number. Lot details are on parcels so I have no idea how this factors in. | |
lotNumberPrefix | No | Lot number prefix. Lot details are on parcels so I have no idea how this factors in. | |
lotNumberSuffix | No | Lot number suffix. Lot details are on parcels so I have no idea how this factors in. | |
postcode | One of thoroughfareName or locality or postcode is mandatory | Postcode | 3000 |
state | No | State | VIC |
thoroughfareName | One of thoroughfareName or locality or postcode is mandatory | Street name | SPENCER |
thoroughfareNumberFrom | No | Street number (starting value). If property only has one number, use this field. | 17 |
thoroughfareNumberFromPrefix | No | Prefix for starting street number | K e.g. K5 HIGH STREET |
thoroughfareNumberFromSuffix | No | Suffix for starting street number | A e.g. 7A ROCKLEY STREET |
thoroughfareNumberTo | No | Street number (end value). Only use for addresses with a range of numbers e.g. 14-16 DARTS AVENUE RAINBOW 3424 | 18 |
thoroughfareNumberToPrefix | No | Prefix for ending street number | A e.g. A1-A8 LAKESIDE VILLAGE DRIVE |
thoroughfareNumberToSuffix | No | Suffix for ending street number | B e.g. 41-49B CARRIER STREET |
thoroughfarePostDirection | No | Suffix for road name | N e.g. 2/156 WERRIBEE STREET N |
thoroughfareTrailingType | No | Street name | STREET |
unitNumber | No | Unit number | 2 e.g. 2/1 HIGH STREET |
unitNumberPrefix | No | Unit number prefix | B e.g. B4/57 FLINDERS LANE |
unitNumberSuffix | No | Unit number suffix | C e.g. 4C/521 TOORAK ROAD |
unitType | No | Unit type | FLAT |
Example request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:lvis="lvis.webservices.addressSearch">
<soapenv:Header/>
<soapenv:Body>
<lvis:request>
<!--Optional:-->
<pRequest functionID="1100" version="?">
<!--Optional:-->
<AddressLookup>
<!--Zero or more repetitions:-->
<Address
addressLine=""
buildingName=""
country="Australia"
levelNumber="9"
levelNumberPrefix=""
levelNumberSuffix=""
levelType=""
locality=""
lotNumber=""
lotNumberPrefix=""
lotNumberSuffix=""
postcode="3000"
state="VIC"
thoroughfareName="SPENCER"
thoroughfareNumberFrom="120"
thoroughfareNumberFromPrefix=""
thoroughfareNumberFromSuffix=""
thoroughfareNumberTo=""
thoroughfareNumberToPrefix=""
thoroughfareNumberToSuffix=""
thoroughfarePostDirection=""
thoroughfareTrailingType="STREET"
unitNumber=""
unitNumberPrefix=""
unitNumberSuffix=""
unitType="">
<!--Zero or more repetitions:-->
<Characteristic name="?" value="?"/>
<!--Zero or more repetitions:-->
<Pos>?</Pos>
</Address>
</AddressLookup>
<!--Optional:-->
<FeatureLookup>
<!--Zero or more repetitions:-->
<Feature name="?" value="?">
<!--Zero or more repetitions:-->
<Characteristic name="?" value="?"/>
<!--Zero or more repetitions:-->
<Pos>?</Pos>
</Feature>
</FeatureLookup>
<!--Optional:-->
<DirectoryLookup>
<!--Zero or more repetitions:-->
<Directory directoryType="?">
<!--Zero or more repetitions:-->
<Characteristic name="?" value="?"/>
<!--Zero or more repetitions:-->
<SearchField fieldName="?" fieldValue="?" searchType="?"/>
</Directory>
</DirectoryLookup>
<!--Zero or more repetitions:-->
<Characteristic name="?" value="?"/>
</pRequest>
</lvis:request>
</soapenv:Body>
</soapenv:Envelope>
Example response
The following field values returned in the response can be used in conjunction with DDP’s Discovery APIs
- Characteristic name="PROPERTY_PFI" value="426005995" OR
- Characteristic name="EZI_ADDRESS" value="120 SPENCER STREET MELBOURNE 3000"
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:requestResponse xmlns:ns2="lvis.webservices.addressSearch">
<requestResult success="TRUE" numberOfResults="1">
<Result resultID="426006000" confidence="100" geocodeLevel="ADDRESS" geocodeLevelCode="4">
<Address thoroughfareNumberFrom="120" thoroughfareName="SPENCER" thoroughfareTrailingType="STREET" locality="MELBOURNE" postcode="3000" state="VIC" country="Australia" levelNumber="9" addressLine="L9 120 SPENCER STREET, MELBOURNE VIC 3000">
<Pos>-37.81827816,144.95441094</Pos>
</Address>
<Feature name="VICMAP.PROPERTY" value="426005995">
<Characteristic name="PFI" value="426005995"/>
<Characteristic name="STATUS" value="A"/>
<Characteristic name="LGA_CODE" value="343"/>
<Characteristic name="PROPNUM" value="682464"/>
<Characteristic name="PROPERTY_TYPE" value="O"/>
<Characteristic name="MULTI_ASSESSMENT" value="Y"/>
<Characteristic name="ADDRESS_PFI" value="426006000"/>
<Characteristic name="PARCEL_PFI" value="202904606"/>
<Characteristic name="PARCEL_PFI" value="202904626"/>
<Characteristic name="PARCEL_PFI" value="202904659"/>
<Characteristic name="PARCEL_PFI" value="2022003"/>
</Feature>
<Feature name="VICMAP.ADDRESS" value="426006000">
<Characteristic name="PFI" value="426006000"/>
<Characteristic name="PROPERTY_PFI" value="426005995"/>
<Characteristic name="EZI_ADDRESS" value="120 SPENCER STREET MELBOURNE 3000"/>
<Characteristic name="FLOOR_TYPE" value="L"/>
<Characteristic name="FLOOR_NO_1" value="9"/>
<Characteristic name="HOUSE_NUMBER_1" value="120"/>
<Characteristic name="ROAD_NAME" value="SPENCER"/>
<Characteristic name="ROAD_TYPE" value="STREET"/>
<Characteristic name="LOCALITY_NAME" value="MELBOURNE"/>
<Characteristic name="STATE" value="VIC"/>
<Characteristic name="NEIGHBOURHOOD_NAME" value=""/>
<Characteristic name="POSTCODE" value="3000"/>
<Characteristic name="LGA_CODE" value="343"/>
<Pos>-37.8182781632451,144.954410938546</Pos>
</Feature>
<Feature name="VICMAP.PARCEL" value="202904606">
<Characteristic name="SPI" value="18~16B\PP5514C"/>
<Characteristic name="SPI_CODE" value="101"/>
<Characteristic name="PFI" value="202904606"/>
<Characteristic name="DESC_TYPE" value="14"/>
<Characteristic name="MULTI" value="N"/>
<Characteristic name="ROAD" value="N"/>
<Characteristic name="LGA_CODE" value="343"/>
<Characteristic name="ALLOTMENT" value="18"/>
<Characteristic name="SEC" value="16B"/>
<Characteristic name="PARISH_CODE" value="3083"/>
<Characteristic name="TOWNSHIP_CODE" value="5514C"/>
<Characteristic name="PART" value="N"/>
<Characteristic name="CREFNO" value="80987"/>
<Characteristic name="STATUS" value="A"/>
<Characteristic name="AREA" value="362.842832"/>
<Characteristic name="PERIMETER" value="84.77"/>
</Feature>
<Feature name="VICMAP.PARCEL" value="202904626">
<Characteristic name="SPI" value="19~16B\PP5514C"/>
<Characteristic name="SPI_CODE" value="101"/>
<Characteristic name="PFI" value="202904626"/>
<Characteristic name="DESC_TYPE" value="14"/>
<Characteristic name="MULTI" value="N"/>
<Characteristic name="ROAD" value="N"/>
<Characteristic name="LGA_CODE" value="343"/>
<Characteristic name="ALLOTMENT" value="19"/>
<Characteristic name="SEC" value="16B"/>
<Characteristic name="PARISH_CODE" value="3083"/>
<Characteristic name="TOWNSHIP_CODE" value="5514C"/>
<Characteristic name="PART" value="N"/>
<Characteristic name="CREFNO" value="80988"/>
<Characteristic name="STATUS" value="A"/>
<Characteristic name="AREA" value="377.385845"/>
<Characteristic name="PERIMETER" value="85.727"/>
</Feature>
<Feature name="VICMAP.PARCEL" value="202904659">
<Characteristic name="SPI" value="20~16B\PP5514C"/>
<Characteristic name="SPI_CODE" value="101"/>
<Characteristic name="PFI" value="202904659"/>
<Characteristic name="DESC_TYPE" value="14"/>
<Characteristic name="MULTI" value="N"/>
<Characteristic name="ROAD" value="N"/>
<Characteristic name="LGA_CODE" value="343"/>
<Characteristic name="ALLOTMENT" value="20"/>
<Characteristic name="SEC" value="16B"/>
<Characteristic name="PARISH_CODE" value="3083"/>
<Characteristic name="TOWNSHIP_CODE" value="5514C"/>
<Characteristic name="PART" value="N"/>
<Characteristic name="CREFNO" value="80989"/>
<Characteristic name="STATUS" value="A"/>
<Characteristic name="AREA" value="409.814235"/>
<Characteristic name="PERIMETER" value="101.613"/>
</Feature>
<Feature name="VICMAP.PARCEL" value="2022003">
<Characteristic name="SPI" value="1\TP712781"/>
<Characteristic name="SPI_CODE" value="101"/>
<Characteristic name="PFI" value="2022003"/>
<Characteristic name="DESC_TYPE" value="15"/>
<Characteristic name="MULTI" value="N"/>
<Characteristic name="ROAD" value="N"/>
<Characteristic name="LGA_CODE" value="343"/>
<Characteristic name="PLAN_NUMBER" value="TP712781"/>
<Characteristic name="LOT_NUMBER" value="1"/>
<Characteristic name="PART" value="N"/>
<Characteristic name="CREFNO" value="80986"/>
<Characteristic name="STATUS" value="A"/>
<Characteristic name="AREA" value="1731.334184"/>
<Characteristic name="PERIMETER" value="179.023"/>
</Feature>
<Feature name="REGIONAL_URBAN_BUSINESS" value="Southern Rural Water"/>
<Feature name="RURAL_BUSINESS" value="City West Water"/>
<Feature name="METRO_BUSINESS" value=""/>
<Feature name="EFLOOD" value="Drainage Rating Boundary"/>
<Feature name="EFLOODDRAINAGEBOUNDARY" value="Inside"/>
<Feature name="VICROADS MAP REF" value="78H7"/>
<Feature name="VICROADS MAP REF" value="437A9"/>
<Feature name="MELWAYS_REF" value="2FA6"/>
<Feature name="MELWAYS_REF" value="43F9"/>
<Feature name="PARISH" value="MELBOURNE NORTH"/>
<Feature name="MESHBLOCK" value="20394733000"/>
</Result>
</requestResult>
</ns2:requestResponse>
</soap:Body>
</soap:Envelope>